<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3//EN">
<HTML><HEAD>
		<TITLE>QuickStart Guide - Sample Visual Programs and Sample Macros</TITLE>
		<META HTTP-EQUIV="keywords" CONTENT="GRAPHICS VISUALIZATION VISUAL PROGRAM DATA
MINING">
	<meta http-equiv="content-type" content="text/html;charset=ISO-8859-1">
</HEAD><BODY BGCOLOR="#FFFFFF" link="#00004b" vlink="#4b004b">
		<TABLE width=510 border=0 cellpadding=0 cellspacing=0>
			<TR>
				<TD><IMG src="../images/spacer.gif" width=80 height=1></TD>
				<TD><IMG src="../images/spacer.gif" width=49 height=1></TD>
				<TD><IMG src="../images/spacer.gif" width=24 height=1></TD>
				<TD><IMG src="../images/spacer.gif" width=100 height=1></TD>
				<TD><IMG src="../images/spacer.gif" width=3 height=1></TD>
				<TD><IMG src="../images/spacer.gif" width=127 height=1></TD>
				<TD><IMG src="../images/spacer.gif" width=6 height=1></TD>
				<TD><IMG src="../images/spacer.gif" width=50 height=1></TD>
				<TD><IMG src="../images/spacer.gif" width=71 height=1></TD>
			</TR>
			<TR>
				<TD colspan=9><IMG src="../images/flcgh_01.gif" width=510 height=24 alt="OpenDX Documentation"></TD>
			</TR>
			<TR>
				<TD colspan=2><A href="../allguide.htm"><IMG src="../images/flcgh_02.gif" width=129 height=25 border="0" alt="Full Contents"></A></TD>
				<TD colspan=3><A href="../qikguide.htm"><B><IMG src="../images/flcgh_03d.gif" width=127 height=25 border="0" alt="QuickStart Guide"></B></A></TD>
				<TD><A href="../usrguide.htm"><IMG src="../images/flcgh_04.gif" width=127 height=25 border="0" alt="User's Guide"></A></TD>
				<TD colspan=3><A href="../refguide.htm"><IMG src="../images/flcgh_05.gif" width=127 height=25 border="0" alt="User's Reference"></A></TD>
			</TR>
			<TR>
				<TD><A href="qikgu024.htm"><IMG src="../images/flcgh_06.gif" width=80 height=17 border="0" alt="Previous Page"></A></TD>
				<TD colspan=2><A href="qikgu026.htm"><IMG src="../images/flcgh_07.gif" width=73 height=17 border="0" alt="Next Page"></A></TD>
				<TD><A href="../qikguide.htm"><IMG src="../images/flcgh_08.gif" width=100 height=17 border="0" alt="Table of Contents"></A></TD>
				<TD colspan=3><A href="qikgu016.htm"><IMG src="../images/flcgh_09.gif" width=136 height=17 border="0" alt="Partial Table of Contents"></A></TD>
				<TD><A href="qikgu035.htm"><IMG src="../images/flcgh_10.gif" width=50 height=17 border="0" alt="Index"></A></TD>
				<TD><A href="../srchindx.htm"><IMG src="../images/flcgh_11.gif" width=71 height=17 border="0" alt="Search"></A></TD>
			</TR>
		</TABLE>
		<H2>Chapter 4. Sample Visual Programs and Sample Macros</H2>
		<A NAME="IDX187"></A><A NAME="IDX188"></A>
<P>
The directory <TT>/usr/local/dx/samples/programs</TT> contains a number
of sample visual programs.
In addition, a set of subdirectories categorize programs by subject
(e.g., 2-D Data, Annotation, etc.).
To start, you may want to look at the programs in the subdirectory
/SIMPLE.
<P>
The sample visual programs listed here can be invoked, like any visual program,
from the VPE.
To access the available sample programs, enter:
<TT>/usr/local/dx/samples/programs/*.net</TT>
in the <TT><STRONG>Filter</STRONG></TT> field (of the
<TT><STRONG>Open...</STRONG></TT> dialog box)
and press <TT><STRONG>Enter</STRONG></TT>.
<P> The macro descriptions are in <A HREF="qikgu026.htm">4.2 , "Sample Macros"</A>. 
<P><B>Notes: </B><OL COMPACT>
<LI>For the user&#39;s convenience, and where appropriate, some programs
have been listed in more than one section.
<LI>Once a program has been opened, relevant descriptive and tutorial
information can be accessed with:
<UL COMPACT>
<LI>the <TT><STRONG>Application Comment</STRONG></TT> option of the
<TT><STRONG>Help</STRONG></TT> pull-down menu (in either the
Image window or the VPE window)
<LI>the <TT><STRONG>Open</STRONG></TT> dialog box, by clicking on the
<TT><STRONG>Comments</STRONG></TT> button.
</UL>
</OL>
<HR>
<H2><A NAME="HDRSAMPLVP"></A>4.1 Sample Visual Programs</H2>
<P>
<H3><U></U>Simple Visual Programs</H3>
<P>Found in directory <TT>$DXROOT/samples/programs/SIMPLE</TT> 

<P>
Each example program listed here illustrates a typical use of the Data Explorer
module it is named for.
<P>
<BR>
<BR>
Arrange.net<BR>
AutoAxes.net<BR>
AutoColor.net<BR>
AutoGlyph.net<BR>

AutoGrid.net<BR>
<BR>
Band.net<BR>
Caption.net<BR>
Color.net<BR>
ColorBar.net<BR>
Compute2.net<BR>

Connect.net<BR>
<BR>
Construct.net<BR>

Describe.net<BR>
<BR>
FaceNormals.net<BR>
GetSet.net<BR>
Gradient.net<BR>
Grid.net<BR>
Histogram.net<BR>
Include.net<BR>

Isolate.net<BR>
<BR>
Isosurface.net<BR>
Light.net<BR>

Map.net<BR>
<BR>
MapToPlane.net<BR>
MarkUnmark.net<BR>
Post.net<BR>

QuantizeImage.net<BR>
<BR>
Reduce.net<BR>
Refine.net<BR>

Regrid.net<BR>
<BR>
Route.net<BR>
Rubbersheet.net<BR>

ScaleScreen.net<BR>
<BR>
ShowBoundary.net<BR>
Slab.net<BR>

Sort.net<BR>
<BR>
Streamline.net<BR>

Supervise.net<BR>
Switch.net<BR>
<BR>
Verify.net<BR>

VisualObject.net<BR>
<BR>
<BR>
<P>
<H3><U></U>2-Dimensional Data</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/2D_DATA</TT> 

<P>
<TT><STRONG>AlternateVisualizations.net</STRONG></TT>
Various ways to visualize 2-dimensional data sets.
<P>

<TT><STRONG>BandedColors.net</STRONG></TT>
How to create an image with a set of constant-color bands

<P>
<TT><STRONG>ConnectingScatteredPoints.net</STRONG></TT>
How to use the Connect and Regrid modules to create connections
(interpolation elements) between points.
<P>
<TT><STRONG>FFT.net</STRONG></TT>
Computing fast and discrete Fourier transformations on sample data sets.
<P>
<TT><STRONG>GeneralImport1.net, GeneralImport2.net</STRONG></TT>
Importing data in the general array import format.
<P>
<TT><STRONG>InvalidData.net</STRONG></TT>
How data marked as invalid are handled by various modules.
<P>
<TT><STRONG>Sealevel.net</STRONG></TT>
Visualizing the effect of rising sea levels on eastern
U.S. coastlines.
<P>

<TT><STRONG>Sort.net</STRONG></TT>
How to sort a field based on the y-position.

<P>
<TT><STRONG>Topo.net</STRONG></TT>
Some ways of visualizing topographic data (in this example, two data
sets sharing the same grid: elevation and a gray-scale image).
<P>

<TT><STRONG>UsingDrape.net</STRONG></TT>
How to "drape" an image or other field onto a height map.

<P>
<TT><STRONG>UsingFilter.net</STRONG></TT>
How to perform filtering operations on images.
<P>
<TT><STRONG>UsingIsosurface.net</STRONG></TT>
How to create isosurfaces and contour lines.
<P>
<TT><STRONG>UsingMorph.net</STRONG></TT>
How to perform morphological operations on images.
<P>
<TT><STRONG>UsingOverlay.net</STRONG></TT>
Using the Overlay module to combine images.
<P>
<H3><A NAME="HDR3DDAT"></A>3-Dimensional Data</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/3D_DATA</TT> 

<P>
<TT><STRONG>AnnotationGlyphs.net</STRONG></TT>
How to create your own glyphs for use with AutoGlyph and
Glyph.
<P><TT><STRONG>AutoColor.net</STRONG></TT>
A simple use of AutoColor to color a 3D field.
<P>
<TT><STRONG>CappedIso.net</STRONG></TT>
How to "close" an isosurface at the boundary of a
three-dimensional volume.

<P>
<TT><STRONG>ComputeOnData.net</STRONG></TT>
How to perform a mathematical function on all the data
values in a field.
<P>
<TT><STRONG>ContoursAndCaption.net</STRONG></TT>
How to draw contour lines on a plane.
The position of the plane is controlled by the Sequencer, and a
caption shows the current position of the plane.
<P>
<TT><STRONG>Distributed.net</STRONG></TT>
Demonstrating the module-level distributed processing capabilities of
Data Explorer.
The network is decomposed into three mutually disjoint subsets, each
of which can be executed on a different host in a distributed
network.
<P>
<TT><STRONG>FlyThrough.net</STRONG></TT>,
<TT><STRONG>FlyThrough2.net</STRONG></TT>
Two ways to create a "fly through" of data.
<P>
<TT><STRONG>Imide&#95;Potential.net</STRONG></TT>
Visualizing a molecule in a potential field.
This program also demonstrates the use of a data-driven sequencer.
<P>
<TT><STRONG>Isolate.net</STRONG></TT>
How to isolate connections of an object.
<P>
<TT><STRONG>MappedIso.net</STRONG></TT>
How to map a variable onto an isosurface of another variable.
<P>
<TT><STRONG>MovingCamera.net</STRONG></TT>
Using the Sequencer to control the position of the viewing point.
<P>
<TT><STRONG>MovingSheet.net</STRONG></TT>
Using the Sequencer to control the position of a slice through a
data set.
<P>
<TT><STRONG>MRI&#95;2.net</STRONG></TT>
One way to visualize a set of 2-dimensional MRI slices as a
3-dimensional volume.
<P>
<TT><STRONG>PickStreamline.net</STRONG></TT>
Using the Pick tool to select points (on an isosurface) as the origin
of streamlines in the data.
<P>
<TT><STRONG>PlotLine.net, PlotLine2.net, PlotTwoLines.net</STRONG></TT>
Using the Plot module to display 2-dimensional plots of data
values.
<P>
<TT><STRONG>ProbeText.net</STRONG></TT>
One way to place text in an image to show data values at probe
points.
<P>
<TT><STRONG>RubberTube.net</STRONG></TT>
How to make a tube diameter vary with the data value.
<P>
<TT><STRONG>SharedCamera.net</STRONG></TT>
How to create two images that share the same camera.
One of the images is used for rotating, zooming, and resizing;
the other tracks the changes.
<P>

<TT><STRONG>SimplifySurface.net</STRONG></TT>
How to simplify a surface consisting of triangles so that fewer
triangles are used.

<P>
<TT><STRONG>Streamline.net</STRONG></TT>
Using parameters of the Streamline module to visualize a
vector field.
<P>
<TT><STRONG>ThunderGlyphSheet.net</STRONG></TT>
Visualization of simulation data from a model of a thunder
storm.
(A slicing surface of variable position and shape is used to intersect
an isosurface of the data; the area of the isosurface is
calculated and displayed.)
<P>
<TT><STRONG>ThunderStreamlines.net</STRONG></TT>
Using the Streamline module to visualize a wind field.
<P>
<TT><STRONG>Thunder&#95;cellcentered.net</STRONG></TT>
Differences between position-dependent and connection-dependent
(cell-centered) data.
<P>
<TT><STRONG>UsingClipPlane.net</STRONG></TT>
Using probes to control the orientation of the clipping plane.
<P>
<TT><STRONG>UsingGlyphs.net</STRONG></TT>
Using the AutoGlyph module to create glyphs for data values.
<P>
<TT><STRONG>UsingIsosurface</STRONG></TT>
How to create isosurfaces and contour lines.
<P>
<TT><STRONG>UsingMap.net</STRONG></TT>
Three ways to use the Map module.
Two fields differing only in the content of their data components are
used as the data-set and mapping operands of
the Map module.
The results are displayed in three separate windows.
<P>
<TT><STRONG>UsingStreakline.net</STRONG></TT>
Using the Streakline module to visualize a vector-field series.
<P>

<TT><STRONG>VolumeClip.net</STRONG></TT>
How to clip a surface in a three-dimensional volume by a plane and then
close the surface by the plane.

<P>
<TT><STRONG>VolumeRenderingSimple.net, VolumeRendering.net</STRONG></TT>
How to create a volume rendering of a 3-dimensional
data set.
The first example is the simplest possible visual program; the second
is more complex, with a color bar to annotate the image.
<P>
<TT><STRONG>WindVorticity.net</STRONG></TT>
Using the DivCurl module to display the vorticity of a
vector field.
The program also uses a shared camera and data-driven interactors.
<P>
<H3><U></U>Annotation</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/ANNOTATION</TT> 
<P>
<TT><STRONG>AnnotationGlyphs.net</STRONG></TT>
How to create your own glyphs for use with AutoGlyph and
Glyph.
<P>
<TT><STRONG>AutoAxesSpecifyTicks.net</STRONG></TT>
How to explicitly specify tick locations and labels for the ticks.
<P>
<TT><STRONG>BandedColors.net</STRONG></TT>
How to create an image with a set of constant color bands.
<P>
<TT><STRONG>Categorical.net</STRONG></TT>
How to display categorical (non-spatial) data
<P>
<TT><STRONG>ContoursAndCaption.net</STRONG></TT>
How to draw contour lines on a plane.
The position of the plane is controlled by the Sequencer, and a
caption shows the current position of the plane.
<P>
<TT><STRONG>Distributed.net</STRONG></TT>
Demonstrating the module-level distributed processing capabilities of
Data Explorer.
The network is decomposed into three mutually disjoint subsets, each
of which can be executed on a different host in a distributed
network.
<P>
<TT><STRONG>ExpandedFonts.net</STRONG></TT>
How to use the expanded font sets of the area and roman_ext fonts.
<P>
<TT><STRONG>FontPreview.net</STRONG></TT>
Displaying ASCII text in a Data Explorer font.
<P>
<TT><STRONG>GroceryList.net</STRONG></TT>
Plots information from a grocery list in a number of different ways; by
category, by item name, etc.
<P>
<TT><STRONG>Imide&#95;Potential.net</STRONG></TT>
Visualizing a molecule in a potential field.
This program also demonstrates the use of a data-driven sequencer.
<P>
<TT><STRONG>Legend.net</STRONG></TT>
Shows how to use the Legend module to associate colors with strings.
<P>
<TT><STRONG>PickPlot.net</STRONG></TT>
Demonstrates how to use picking in a plot to extract x,y positions.
<P>
<TT><STRONG>PlotGroupOfLines.net</STRONG></TT>
How to plot a multiple-line graph

<P>
<TT><STRONG>PlotLine.net, PlotLine2.net, PlotTwoLines.net</STRONG></TT>
Using the Plot module to display 2-dimensional plots of data
values.
<P><TT><STRONG>PlotSpecifyTicks.net</STRONG></TT>
How to explicitly specify tick locations and labels.
<P>
<TT><STRONG>ProbeText.net</STRONG></TT>
One way to place text in an image to show data values at probe
points.
<P>
<TT><STRONG>SalesOnStates.net</STRONG></TT>
Shows how to display sales or other data on a per-state basis.
<P>
<TT><STRONG>Sort.net</STRONG></TT>
How to sort a field based on the y-position.
<P>
<TT><STRONG>SpecialCharacters.net</STRONG></TT>
Displaying all of the characters in the "pitman" or
"area" fonts supplied with Data Explorer.
How to specify non-ASCII characters.
<P>
<TT><STRONG>ThunderGlyphSheet.net</STRONG></TT>
Visualization of simulation data from a model of a thunder
storm.
(A slicing surface of variable position and shape is used to intersect
an isosurface of the data; the area of the isosurface is
calculated and displayed.)
<P>
<TT><STRONG>UsingGlyphs.net</STRONG></TT>
Using the AutoGlyph module to create glyphs for data values.
<P>
<TT><STRONG>UsingTextAndTextGlyphs.net</STRONG></TT>
How to display text data at specified locations in the space occupied
by an object.
<P>
<H3><U></U>Categorical</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/CATEGORICAL</TT> 
<P>
<TT><STRONG>Categorical.net</STRONG></TT>
How to display categorical (non-spatial) data
<P>
<TT><STRONG>Duplicates.net</STRONG></TT>
How to detect duplicate values in a data set using CategoryStatistics
<P>
<TT><STRONG>GroceryList.net</STRONG></TT>
Plots information from a grocery list in a number of different ways; by
category, by item name, etc.
<P>
<TT><STRONG>Legend.net</STRONG></TT>
How to create a legend, which associates a set of colors with a set of
strings
<P>
<TT><STRONG>SalesOnStates.net</STRONG></TT>
How to display sales data by state
<P>
<TT><STRONG>ZipCodes.net</STRONG></TT>
How to import some data associated with zipcodes using
ImportSpreadsheet, then display those data on a state map. This program
also illustrates the use of CategoryStatistics to compute the mean data
value for each category (in this case, zipcode).

<P>
<H3><U></U>Colormap Editor</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/COLORMAP_EDITOR</TT> 

<P>
<TT><STRONG>DataDrivenInteractors.net</STRONG></TT>
Some uses of data-driven interactors.
<P>
<TT><STRONG>Imide&#95;Potential.net</STRONG></TT>
Visualizing a molecule in a potential field.
This program also demonstrates the use of a data-driven Sequencer.
<P>

<TT><STRONG>StandardColormaps</STRONG></TT>
Demonstrates a number of useful colormaps, depending on the type of data
being viewed.

<P>
<TT><STRONG>UsingColorMaps.net</STRONG></TT>
Using color maps to control the visualization of data.
<P>
<TT><STRONG>VolumeRendering.net</STRONG></TT>
How to create a volume rendering of a 3-dimensional
data set.
<P>
<H3><U></U>Compute</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/COMPUTE</TT> 

<P>
(Compute is a general purpose module for performing mathematical
operations on data.)
<P><TT><STRONG>Bounce.net</STRONG></TT>
The path of a bouncing ball.
<P>
<TT><STRONG>Compute2.net</STRONG></TT>
A simple visual program which demonstrates how to use the Compute2
module.

<P>
<TT><STRONG>ComputeMultiLine.net</STRONG></TT>
How to pass a multiline arithmetic expression to Compute2.
<P>
<TT><STRONG>ComputeOnData.net</STRONG></TT>
How to perform a mathematical function on all the data
values in a field.
<P>
<TT><STRONG>WarpingPositions.net</STRONG></TT>
How to use the Compute module to "warp" the positions component of
a field (e.g., warping a 2-dimensional field into the shape of a
cylinder or sphere).
<P>
<H3><U></U>Data-driven Interactors</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/DATA_DRIVEN_INTERACTORS</TT> 

<P>
<TT><STRONG>DataDrivenInteractors.net</STRONG></TT>
Some uses of data-driven interactors.
<P>
<TT><STRONG>DataDrivenSelector.net</STRONG></TT>
How to use a data-driven selector interactor.
<P>
<TT><STRONG>Imide&#95;Potential.net</STRONG></TT>
Visualizing a molecule in a potential field.
This program also demonstrates the use of a data-driven Sequencer.
<P>
<H3><U></U>Debugging</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/DEBUGGING</TT> 

<P>
<TT><STRONG>Verify.net</STRONG></TT>
How to check the internal consistency of a data object.
<P>
<TT><STRONG>VisualObject.net</STRONG></TT>
Display the hierarchy of a data field.
<P>
<H3><U></U>Distributed Processing</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/DISTRIBUTED_PROCESSING</TT> 

<P>
<TT><STRONG>Distributed.net</STRONG></TT>
Demonstrating the module-level distributed processing capabilities of
Data Explorer.
The network is decomposed into three mutually disjoint subsets, each
of which can be executed on a different host in a distributed
network.

<P>
<H3><U></U>Image Processing</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/IMAGE_PROCESSING</TT> 
<P>
<TT><STRONG>FFT.net</STRONG></TT>
Computing fast and discrete Fourier transformations on sample data sets.
<P>
<TT><STRONG>MRI&#95;1.net</STRONG></TT>
One way to visualize 2-dimensional MRI slices.
<P>
<TT><STRONG>UsingEqualize.net</STRONG></TT>
How to use the Equalize module to emphasize features in an image.
<P>
<TT><STRONG>UsingFilter.net</STRONG></TT>
How to perform filtering operations on images.
<P>
<TT><STRONG>UsingMorph.net</STRONG></TT>
How to perform morphological operations on images.
<P>
<TT><STRONG>UsingOverlay.net</STRONG></TT>
Using the Overlay module to combine images.

<P>
<H3><U></U>Importing Data</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/IMPORTING</TT> 
<P>
<TT><STRONG>Categorical.net</STRONG></TT>
How to import some data associated with state abbreviations
using ImportSpreadsheet, then plot the average data for each state.
<P>
<TT><STRONG>Duplicates.net</STRONG></TT>
checks a simple table of data and checks for duplicate state names.

<P>
<TT><STRONG>GeneralImport1.net, GeneralImport2.net</STRONG></TT>
Importing data in the general array import format.
<P>
<TT><STRONG>ImportExternalFilter.net</STRONG></TT>
How to use the external-filter option of the Import module to import
data in file formats other than Data Explorer.
<P>

<TT><STRONG>ZipCodes.net</STRONG></TT>
How to import some data associated with zipcodes using
ImportSpreadsheet, then display those data on a state map. This program
also illustrates the use of CategoryStatistics to compute the mean data
value for each category (in this case, zipcode).

<P>
<H3><U></U>Interface Control</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/INTERFACE_CONTROL</TT> 
<P>
<TT><STRONG>DialogStyle.net</STRONG></TT>
Using dialog-style control panels.
This program is intended to run with Data Explorer in image mode (i.e., started
with <TT>dx -image</TT>).

<P>
<TT><STRONG>InterfaceControl1.net</STRONG></TT>
Using ManageControlPanel and ManageColormapEditor to open and close
control panels and the Colormap editor according to the setting
of the Selector interactor (alternating between two
realization techniques).
<P>
<TT><STRONG>InterfaceControl2.net</STRONG></TT>
Using ManageImageWindow to close a plot image window when a toggle
interactor requires it.
<P>
<TT><STRONG>InterfaceControl3.net</STRONG></TT>
Using ManageControlPanel to open and close different multiple panels.

<P>
<H3><U></U>Looping</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/LOOPING</TT> 
<P>
<TT><STRONG>Accumulate.net</STRONG></TT>
How to use Get and Set to accumulate objects (in this case, slabs
selected from a 3-dimensional volume).
<P>
<TT><STRONG>Bounce.net</STRONG></TT>
The path of a bouncing ball.
<P>
<TT><STRONG>SimpleGetSetLoop.net</STRONG></TT>
How to create a program loop with GetLocal/SetLocal, GetGlobal/SetGlobal,
and Done.

<P>
<H3><U></U>Miscellaneous</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/MISC</TT> 
<P>
<TT><STRONG>CensusData.net</STRONG></TT>
How to visualize census data on a map of the United States.

<P>
<TT><STRONG>ExampleSMP.net</STRONG></TT>
How Partition should be incorporated in a visual program so that Data Explorer
SMP
can run it in parallel on SMP (symmetric multiprocessor)
machines.

<P>
<TT><STRONG>Factorial.net</STRONG></TT>
How to compute N factorial using looping.

<P>
<TT><STRONG>HomeOwn.net</STRONG></TT>
Illustrates the use of the MapOnStates macro to plot home ownership in
the United States over time.


<P>
<TT><STRONG>ImageTool.net</STRONG></TT>
Using interactors to control different aspects of the Image tool (e.g.,
AutoAxes and background color).
<P><TT><STRONG>Image_wo_UI.net</STRONG></TT>
Demonstrates the Image2Macro, which implements much of the functionality
of the Image tool with SuperviseWindow, SuperviseState, and Display.
Thus this macro shows how you could build your own custom direct
interactors independent of the Data Explorer user interface.
<P>
<TT><STRONG>IndependentlyArrange.net</STRONG></TT>
Illustrates how to independently arrange a number of interactive windows
within a single larger window using the SuperviseWindow and
SuperviseState modules.
<P>
<TT><STRONG>InsetImage.net</STRONG></TT>
Illustrates how to inset an independently interactive window within a
larger window.

<P>
<TT><STRONG>Interop.net</STRONG></TT>
One way of making Data Explorer modules work together.
Data can be mapped onto objects at different points in the
visualization to achieve desired results.
<P>
<TT><STRONG>InvalidData.net</STRONG></TT>
How data marked as invalid are handled by various modules.
<P>
<TT><STRONG>Majority.net</STRONG></TT>
The difference between row and column majority when using the general
array format.
<P><TT><STRONG>ManipulateGroups.net</STRONG></TT>
How to use ChangeGroupType and ChangeGroupMember to restructure groups.
<P>
<TT><STRONG>MRI&#95;1.net</STRONG></TT>
One way to visualize 2-dimensional MRI slices.
<P>
<TT><STRONG>MRI&#95;2.net</STRONG></TT>
One way to visualize a set of 2-dimensional MRI slices as a
3-dimensional volume.

<P>
<TT><STRONG>MultipleDataSets.net</STRONG></TT>
Using the Inquire module and data-driven interactors to make
visual programs more flexible.
A relatively "generic" program that can be used with a variety
of different input data sets.
<P>
<TT><STRONG>PickStreamline.net</STRONG></TT>
Using the Pick tool to select points (on an isosurface) as the origin
of streamlines in the data.
<P><TT><STRONG>ScatterData.net</STRONG></TT>
Some ways to visualize scattered data
<P>
<TT><STRONG>Supervise.net</STRONG></TT>
Demonstrates how to use SuperviseWindow, SuperviseState, and
Display together in a simple visual program.
<P>
<TT><STRONG>Topo.net</STRONG></TT>
Some ways of visualizing topographic data (in this example, two data
sets sharing the same grid: elevation and a gray-scale image).

<P>
<TT><STRONG>UsingAttributes.net</STRONG></TT>
Using attributes in a Data Explorer format file.
(In this example, attributes added to the file to indicate date and
source are used to caption the image.)
<P>

<TT><STRONG>UsingDrape.net</STRONG></TT>
How to "drape" an image or other field onto a height map.

<P>
<TT><STRONG>UsingEqualize.net</STRONG></TT>
How to use the Equalize module to emphasize features in an image.
<P>
<TT><STRONG>UsingMessage.net</STRONG></TT>
Using the Message module to present information to the user of a visual
program.
<P>
<TT><STRONG>UsingMultiGrids.net</STRONG></TT>
Some of the differences between multigrid groups and generic groups.
<P>
<TT><STRONG>UsingParse.net</STRONG></TT>
Using the Parse module to extract information from a string.
<P>
<TT><STRONG>UsingSwitchAndRoute.net</STRONG></TT>
Using the Switch and Route modules to control the execution of a
visual program.
<P>
<H3><U></U>Probes</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/PROBES</TT> 
<P>
<TT><STRONG>PlotLine2.net</STRONG></TT>
Using the Plot module to display 2-dimensional plots of data
values.

<P>
<TT><STRONG>ProbeText.net</STRONG></TT>
One way to place text in an image to show data values at probe
points.
<P>
<TT><STRONG>UsingProbes.net</STRONG></TT>
Using probes to control the position of a cutting plane through a
3-dimensional data set.
<P>
<P>
<TT><STRONG>UsingStreakline.net</STRONG></TT>
Using the Streakline module to visualize a vector-field series.

<P>
<H3><U></U>Rendering</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/RENDERING</TT> 
<P>
<TT><STRONG>FatLines.net</STRONG></TT>
How to antialias lines and create multiple pixel width lines
in hardware rendering.
<P>
<TT><STRONG>Isolate.net</STRONG></TT>
Demonstrates an alternative to volume rendering using the Isolate
module.
<P>
<TT><STRONG>SharedCamera.net</STRONG></TT>
How to create two images that share the same camera.
One of the images is used for rotating, zooming, and resizing;
the other tracks the changes.
<P>
<TT><STRONG>TextureMapOpenGL.net</STRONG></TT>
Using texture mapping (available only with a hardware adapter that
supports OpenGL) to map an image onto a surface.
<P>
<TT><STRONG>UsingClipPlane.net</STRONG></TT>
Using probes to control the orientation of the clipping plane.
<P>
<TT><STRONG>UsingLights.net</STRONG></TT>
How to use lights to illuminate the object in an image.
<P>
<TT><STRONG>UsingShade.net</STRONG></TT>
Controlling the shading properties of an object.
<P>
<TT><STRONG>VolumeRenderingSimple.net, VolumeRendering.net</STRONG></TT>
How to create a volume rendering of a 3-dimensional
data set.
The first example is the simplest possible visual program; the second
is more complex, with a color bar to annotate the image.

<P>
<H3><U></U>Scattered Data</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/SCATTERED</TT> 
<P>
<TT><STRONG>AnnotationGlyphs.net</STRONG></TT>
How to create your own glyphs for use with AutoGlyph and
Glyph.
<P>
<TT><STRONG>ConnectingScatteredPoints.net</STRONG></TT>
How to use the Connect and Regrid modules to create connections
(interpolation elements) between points.
<P>
<TT><STRONG>ScatterData.net</STRONG></TT>
Some ways to visualize scattered data

<P>
<H3><U></U>Sequencer</H3>
<P>Found in directory <TT>&#36;DXROOT/samples/programs/SEQUENCER</TT> 

<P><TT><STRONG>ContoursAndCaption.net</STRONG></TT> How to draw contour lines on a plane. The position of the plane is controlled by the Sequencer, and a caption shows the current position of the plane.

<P>
<TT><STRONG>FlyThrough.net</STRONG></TT>,
<TT><STRONG>FlyThrough2.net</STRONG></TT>
Two ways to create a "fly through" of data.

<P>
<TT><STRONG>Imide&#95;Potential.net</STRONG></TT>
Visualizing a molecule in a potential field.
This program also demonstrates the use of a data-driven Sequencer.
<P>
<TT><STRONG>MRI&#95;1.net</STRONG></TT>
One way to visualize 2-dimensional MRI slices.

<P>
<TT><STRONG>MovingCamera.net</STRONG></TT>
Using the Sequencer to control the position of the viewing point.
<P>
<TT><STRONG>MovingSheet.net</STRONG></TT>
Using the Sequencer to control the position of a slice through a
data set.
<P>

<TT><STRONG>Sort.net</STRONG></TT>
How to sort a field based on the y-position.

<P>
<TT><STRONG>SpecialCharacters.net</STRONG></TT>
Displaying all of the characters in the "pitman" or
"area" fonts supplied with Data Explorer.
How to specify non-ASCII characters.
<P>
<TT><STRONG>Streamline.net</STRONG></TT>
Using parameters of the Streamline module to visualize a
vector field.

		<P>
		<HR>
		<DIV align="center">
			<P><A href="../allguide.htm"><IMG src="../images/foot-fc.gif" width="94" height="18" border="0" alt="Full Contents"></A> <A href="../qikguide.htm"><IMG src="../images/foot-qs.gif" width="94" height="18" border="0" alt="QuickStart Guide"></A> <A href="../usrguide.htm"><IMG src="../images/foot-ug.gif" width="94" height="18" border="0" alt="User's Guide"></A> <A href="../refguide.htm"><IMG src="../images/foot-ur.gif" width="94" height="18" border="0" alt="User's Reference"></A></P>
		</DIV>
		<DIV align="center">
			<P><FONT size="-1">[ <A href="http://www.research.ibm.com/dx">OpenDX Home at IBM</A>&nbsp;|&nbsp;<A href="http://www.opendx.org/">OpenDX.org</A>&nbsp;] </FONT></P>
			<P></P>
		</DIV>
		<P></P>
	</BODY></HTML>
